package com.hyper_yang.javase.maps;

import java.util.HashMap;
import java.util.Map;

public class TryMap {
    /*
       特点： 1. 双列集合一次需要存一对数据，分别为键和值
             2. 键不能重复，值能重复
             3. 键和值是一一对应的，每一个键只能找到自己对应的值
             4. "键和值" 整体称为 "键值对"、"键值对对象"、"Entry对象"
       Map 集合: 顶层接口，它的功能全部双列集合都可以继承使用
            V put(K key,V value)        添加元素
            V remove(Object key)        根据键删除键值对元素
            void clear()                移除所有的键值对元素
            boolean containsKey(Object key)        判断集合是否包含指定的键
            boolean containsValue(Object value)     判断集合是否包含指定的值
            boolean isEmpty()           判断集合是否为空
            int size()                  集合的长度（键值对的个数）
     */
    public static void main(String[] args) {
        Map<String,String> map = new HashMap<>();

        // put: 添加、覆盖
        map.put("郭靖", "黄蓉");
        map.put("韦小宝", "沐剑平");
        map.put("陈平安", "齐景春");

//        String value = map.put("韦小宝", "双儿"); // 返回被覆盖的值
//        System.out.println(value);

//        String value = map.remove("郭靖");
//        System.out.println(value);

        map.clear();

//        boolean flag = false;
//        flag = map.containsKey("郭靖");
//        flag = map.containsValue("黄蓉");
//        System.out.println(flag);

        System.out.println(map.isEmpty());
        System.out.println(map.size());
        System.out.println(map);
    }
}
